Manual do serviço de Conexão de redes remotas pelo protocolo
      IPSEC
    O sistema CLOUD-BRICKS, oferece dois tipos de conexão VPN:
    1. Conexão L2TP/IPSEC
    
      - Serve para conectar computadores independentes numa VLAN
        específica.
- É útil para configurar um acesso remoto criptografado com o
        objetivo de gerenciar os servidores de uma VLAN desde um
        computador desktop ou laptop. 
- É possível se conectar desde qualquer endereço IP (útil para
        “RoadWarriors”) 
-  A autenticação é feita utilizando certificados digitais
        X.509. 
-  Este tipo de conexão pode ser configurada no sistema de cloud
        no link “Usuários VPN”. 
-  Veja o documento Manual
          VPN Windows para mais detalhes. 
2. Rede Remota IPSEC
    
      - Serve para interconectar uma rede remota com uma VLAN dentro
        do Cloud utilizando um túnel IPSEC. 
- A ideia é conectar um ruteador na rede do cliente para que
        seja possível acessar transparentemente os servidores do Cloud.
      
- Este tipo de conexão pode ser configurada no sistema de cloud
        no link “Redes VPN”. 
-  O acesso é restrito unicamente ao endereço IP da rede do
        cliente. 
-  A autenticação é feita utilizando um shared key do IPSEC. 
-  Quando uma rede externa é conectada numa VLAN pelo sistema
        IPSEC, o endereço IP público da rede remota não pode ser usado
        para nenhuma outra conexão VPN. 
-  O objetivo de este documento é mostrar como configurar este
        tipo de conexão. 
TOPOLOGIA DE REDE
     
    
    CONFIGURAÇÃO NO CLOUD 
    Para iniciar a configuração você precisa das seguintes
      informações:
    
      -  Endereço IP público usado pelo ruteador do cliente. 
-  Endereço IP e máscara da rede privada do cliente. 
-  Se o ruteador estiver atrás de uma conexão NAT, também
        precisará do endereço IP privado do ruteador. 
No sistema de Cloud, faça clic no link “Conexões → Redes VPN”,
      agora pode preencher as informações de configuração:
    Nome: Um identificador para a conexão, pode ser o nome do
      cliente.
    Shared Key: É a senha para proteger o acesso à rede VLAN.
    Endereço IP público: É o IP utilizado pelo ruteador para
      conectar à Internet.
    Endereço IP privado: Se seu ruteador estiver atrás de uma
      conexão NAT, tem que especificar o endereço IP privado do
      ruteador. Se este não for o caso, pode deixar sem preencher.
    Rede privada: IP e máscara da rede privada do cliente.
      (Exemplo: 192.168.1.0/24 ou 172.30.11.0/255.255.255.0)
    O sistema pode rejeitar sua rede privada se:
    
    
      -  Já existe outra conexão VPN utilizando uma rede privada
        parecida que possa gerar conflitos de ruteamento. 
-  A rede privada do cliente entra em conflito com alguma das
        VLANS configuradas no servidor do cloud. 
Outras restrições:
    
      -  Somente são permitidas redes privadas IPv4 (IPv6 ainda não é
        suportado neste tipo de conexão) 
-  Os endereços IP da rede privada devem pertencer as redes
        10.X.X.X/16 ou /24, 192.168.X.X/16 ou 172.16.0.0/12. 
-  Endereços IP privados da rede 196.254.X.X/26 não devem ser
        utilizados. 
    Depois de clicar no botão “Salvar alterações” o sistema está pronto
    para receber a conexão IPSEC, agora é necessário configurar o
    ruteador do lado do cliente.
    
IMPORTANTE:
    
      -  Os servidores virtuais da VLAN do Cloud que vai ser acessada,
        tem que ser desligados e ligados de novo (não reiniciados) para
        que o sistema de cloud possa configurar o ruteamento necessário
        para acessar a rede do cliente. 
-  A rede VLAN do Cloud que vai ser acessada normalmente tem o
        endereço 10.80.XX.0/24 (onde XX é o número da VLAN) 
RUTEADOR LINUX (CENTOS/REDHAT/FEDORA)
    Um computador com sistema operacional Linux pode ser usado como
      ruteador IPSEC.
    Estas instruções foram feitas para distribuções Linux compatíveis
      com RedHat Enterprise Linux (CentOS, Fedora, etc), mas podem
      servir como guia para outras distribuções também.
    
      -  Instalar o pacote openswan: 
yum install openswan
    
      -  Editar o arquivo /etc/ipsec.secrets deixando somente uma
        linha com as seguintes informações: 
<IP_RUTEADOR> <IP_CLOUD>:
      PSK “<SHARED_KEY>”
    IP_RUTEADOR: É o IP do seu
      ruteador, se estiver atrás de NAT, tem que utilizar o IP privado,
      caso contrario o IP público.
    IP_CLOUD: É o endereço IP do seu
      servidor físico do cloud.
    SHARED KEY: É a senha (shared
      key) que foi configurada dentro do sistema de cloud no link “Redes
      VPN”
    Exemplo:
    192.168.0.250 74.50.112.156: PSK
      "rKtllZXP....."
    
      -  Editar o arquivo /etc/ipsec.conf assim: (os espaços ao inicio
        das linhas são muito importantes) 
version 2 # conforms to second version of ipsec.conf specification
config setup
dumpdir=/var/run/pluto/
nat_traversal=yes
virtual_private=%v4:0.0.0.0/0
protostack=netkey
force_keepalive=yes
keep_alive=60
conn WEBLINK
authby=secret
pfs=yes
auto=start
keyingtries=3
ikelifetime=8h
keylife=1h
type=tunnel
#Endereço IP público do seu ruteador 
#(se estiver atras de NAT, utilizar o IP privado)
left=192.168.0.250
#A rede privada do cliente no formato IP/mask
leftsubnet=192.168.0.0/24
## IP privado do ruteador:
leftsourceip=192.168.0.250
#Endereço IP público do seu servidor físico do cloud
right=74.50.112.156
#IP/mask da VLAN de destino no sistema cloud:
rightsubnet=10.80.45.0/24
dpddelay=10
dpdtimeout=20
dpdaction=clear
     
    
    
      -  Executar os seguintes comandos, e configurá-los num
          script para que sejam rodados cada vez que o
          sistema for reiniciado: 
#Evitar ICMP redirects
for vpn in /proc/sys/net/ipv4/conf/*; do 
echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; 
done
    
      -  O ruteador tem que estar configurado como default gateway da
        rede do cliente. 
-  Se o ruteador faz NAT pelo IPTABLES para compartilhar o
        endereço IP público com os outros computadores da rede, é muito
        importante que a regra de NAT do iptables NÃO TENTE ALTERAR
        (fazer NAT) OS PACOTES COM DESTINO À VLAN do CLOUD:
 
Exemplo 1: Se sua regra de NAT
      utiliza o comando SNAT assim:
    iptables -t NAT -A POSTROUTING -s <rede_privada/mask> -j SNAT –to <IP_PUBLICO> 
    Então a regra tem que ignorar a rede
      VLAN do Cloud assim:
    iptables -t NAT -A POSTROUTING -s <rede_privada/mask> ! -d <rede_vlan/mask> -j SNAT –to <IP_PUBLICO> 
    Exemplo 2: Se sua regra de NAT
      utiliza o comando MASQUERADE assim:
    iptables -t NAT -A POSTROUTING -o <interface> -j MASQUERADE 
    Então a regra tem que ignorar a rede
      VLAN do Cloud assim:
    iptables -t NAT -A POSTROUTING -o <interface> ! -d <rede_vlan/mask> -j MASQUERADE 
    
      -  Agora pode iniciar o serviço IPSEC para iniciar a conexão: 
service ipsec start
    
      -  Acompanhe o log /var/log/secure para ver se o processo de
        conexão é bem sucedido, procure o string: “IPsec SA established
        tunnel mode” 
-  Se a conexão deu certo, o openswan deve criar as rutas
        necessárias para acessar a VLAN do cloud, pode verificar a tabla
        de ruteamento do Linux com o comando: 
netstat -nr
    
      -  Agora deve ser possível fazer ping desde a rede do cliente
        para os servidores virtuais do cloud e também no sentido
        contrario. (lembre-se de sempre utilizar os endereços IP
        privados nas duas redes) 
RUTEADOR MIKROTIK
    
      Um ruteador Mikrotik ou um computador com sistema operacional
      RouterOS pode ser usado como ruteador IPSEC para conectar ao
      serviço de VPN do Cloud.
    
    
      -  Utilize o software WinBox para conectar no seu ruteador. 
-  No menu escolha “IP → IPSEC” 
 
 
    
      -  Na janela do IPSEC, faça clic no icone “+” para aparecer a
        janela “New IPSEC Policy” 
 
 
    
      -  Agora temos que preencher as seguintes informações:
        
          -  Src Address: IP/mask da rede privada interna do
            cliente 
-  Dst Address: IP/mask da VLAN do sistema Cloud 
 
 
 
    
      -  Agora clicar na aba “Action” dentro da mesma janela “New
        IPSec Policy” 
-  Preencher as seguintes informações:
        
          -  Ativar o checkbox “Tunnel” 
-  SA Src Address: IP do ruteador (utilizar o IP
            privado se estiver atrás de NAT) 
-  SA Dst Address: Endereço IP público do seru
            servidor físico do cloud. 
 
 
 
    
      -  Pode clicar OK. 
-  Agora clica na aba “Peers” da Janela IPSEC e depois clica no
        icone “+” 
 
 
    
      -  A Janela “New IPSEC Peer” deve aparecer. 
-  Preencher as seguintes informações:
        
          -  Address: Endereço IP público do seu servidor de
            cloud. 
-  Auth Method: pre shared key 
-  Secret: Shared Key (senha) gerada no sistema de
            cloud quando a Rede VPN foi configurada. 
-  Exchange mode: main 
-  Ativar o checkbox: “Send Initial Contact” 
-  Se seu ruteador estiver atrás de um NAT, ativar o
            checkbox “NAT Traversal” 
 
 
 
    
      -  Clic em OK 
-  Se o ruteador faz NAT para compartilhar o endereço IP público
        com os outros computadores da rede, é muito importante que a
        regra de NAT ou de MASQUERADE do firewall NÃO TENTE ALTERAR OS
        PACOTES COM DESTINO À VLAN do CLOUD, ouseja a VLAN tem que ser
        ignorada pelas regras de NAT e MASQUERADE. 
    A configuração está pronta, para o Mikrotik conectar com o serviço
    de Cloud, precisamos gerar tráfego de dados com destino dos
    servidores do cloud, para isso podemos fazer um ping para algum dos
    nossos servidores virtuais (lembre-se de usar os endereços privados
    10.X.X.X)
    
 
 
    Também deve ser possível fazer ping desde os servidores virtuais
    para máquinas na rede privada do cliente.
    
Conexão pelo ruteador Juniper (ScreenOS)
    Vamos mostrar como utilizar um dispositivo Juniper com capacidade
      de VPN para conectar ao serviço de Redes VPN do Cloud.
    
    Recomendamos a configuración Policy-Based Site-toSite VPN AutoKey
      IKE
    
    O dispositivo Juniper já deve ter configuradas as zonas trust
      (rede privada) e untrust (rede pública) com ruteamiento e NAT
      funcionando apropriadamente.
      
    Configurar endereços no Address Book
    
    Aqui devemos configurar a rede privada do lado do cliente,
    utilizaremos 192.168.0.0/24 como exemplo
    
    Policy > Policy Elements > Addresses > List > New
    
    Address Name: Trust_LAN
    IP Address/Domain Name:
    IP/Netmask: (select), 192.168.0.0/24
    Zone: Trust
    

    precisamos de mais uma entrada no address book para referenciar a
    VLAN remota no Cloud:
    
    Policy > Policy Elements > Addresses > List > New
    
    Address Name: CLOUD-BRICKS-VLAN
    IP Address/Domain Name:
    IP/Netmask: (select), 10.80.
X.0/24   
    (substituir X com o número de la VLAN)
    Zone: Untrust
    
 
    Configuração da VPN
    
    Vamos indicar o endereço IP remoto do cloud como destino da VPN,
    (Endereço IP do seu servidor físico de cloud), neste exemplo vamos
    chamar o gateway de "TO_WEBLINK
".
      
    VPNs > AutoKey Advanced > Gateway > New
      
    Faça clic em "Advanced", no campo "Preshared Key" deve colocar a
    senha criada  no gerenciador de Cloud-Bricks (Shared Key)
    quando a rede VPN foi configurada. É muito importante seleccionar
    "UNTRUST" como a interfaz de saída (outgoing interface)
    

    Depois fazer clic em "Return" e depois em "OK".
    
    Agora ir para VPNs > AutoKey IKE > New
    
    Temos que usar o Gateway remoto criado no ponto anterior, neste
    exemplo vamos chamar à VPN de "WEBLINK_TUNNEL".
    

    Fazer clic em "Advanced" para configurar os seguintes parámetros:
    

    Fazer clic em "Return" e depois "OK"
    
Criação do Policy
    
    Para finalizar, vamos juntar os elementos criados anteriormente
    usando um Policy, vá para:
    
    Policies > (From: Trust, To: Untrust) New
    
    Neste exemplo vamos chamar o policy de "WEBLINK_VPN".
    

    É muito importante que as suas novas políticas sejam as primeras na
    lista. Pode ser necessário subí-las para que fiquem no primeiro
    lugar da lista.
    Depois de fazer clic em "OK" a configuração está pronta, porém o
    dispositivo somente iniciará a conexão quando veja que há tráfego
    entre aa red local e a VLAN remota no Cloud-Brick.
    
    Para gerar esse tráfego, sugerimos fazer um ping desde sua red local
    para qualquer um dos endereços IP das máquinas virtuales que estejam
    na VLAN configurada (10.80.X.Y, onde X corresponde ao número da sua
    VLAN).